# Google services

## Google search

### Searx

A meta-search engine that searches other search engines and returns results without you having to send your data to them. Searx can search all major search engines such as Google, Duckduckgo, Yahoo, Bing and Yandex, as well as files, images and provide instant answers a-la Google, while *not* requiring Javascript to work.

The project is under active development and there is a vast ecosystem of instances you can choose from, including hidden Tor services.

 - [Publicly-listed instances](https://searx.space/) (instance matchmaker)
 - [Project home and source code](https://github.com/searx/searx)

### Browserless alternative

Searx also offers webfeeds for results. You can have them in CSV, RSS or JSON formats for easy parsing or reading. To obtain them, run `wget https://your_instance/search?q=your_query&format=json`.

From that point and on, it's just a matter of parsing and presenting the content for easy viewing in the terminal.

## YouTube

### Invidious

A frontend to watching YouTube in the browser without any of the tracking or ads in it, and that does *not* require Javascript to work. 

You can watch any YouTube video with it by simply substituting the `youtube.com` part of the URL with an Invidious instance's address, complete with Playlist playback support. You may additionally create an account in an invidious instance that allows you to save favorites and playlists, as well as revisit watch history with no additional information from you required other than a username/password.

You can choose to only stream the audio (great for listening to music!) by adding `&listen=1` to the end of any Invidious URL. Some instances may also allow explicit downloading of video, but otherwise you can always right-click and save the video or audio through your browser.

The downside is that some livestreams may not work correctly, but fallback links to YouTube are provided in every video. Also, due to the limited number of instances, some may go offline unpredictably.

The project is under active development, but there are not as many public instances available to choose from.

 - [Public Instance list](https://invidio.us/)
 - [Source repository](https://github.com/iv-org/invidious)

### Cloudtube

Similar to Invidious, this frontend aims to be a seamless YouTube interface without any of the tracking or Javascript. Cloudtube seems a little more complex, as it apparently requires an existing Invidious instance to interact with before making the video available.

The interface is slick and much like Invidious, you can create and manage subscriptions and watch history. However, in Cloudtube, you don't need to create an account to do so: anonymous cookies are used to "save" your session there, with the clear option to delete them at will, or migrate them to another Cloudtube instance.

Speaking of which, this is an area where Cloudtube could see some improvement: currently the only publicly accessible instance is [`tube.cadence.moe`](https://tube.cadence.moe/), with no other instance being shown in the project page.

 - [Online instance](https://tube.cadence.moe/)
 - [Project website](https://git.sr.ht/~cadence/cloudtube/)

### Browserless alternatives

> **Warning:** most if not all of these will *not* have any privacy protection benefits, as the request will go straight to your computer from YouTube. In these cases, consider using it combined with Tor or a VPN.

The hacker's way is: install [youtube-dl](https://yt-dl.org) and `mpv` then run `mpv --keep-open https://youtube.com/watch?v=YOUR_VIDEO`. Will save you a lot of resources with additional configuration of the `mpv` command. You can also straight up download the videos with `youtube-dl`.

Programs such as [Minitube](https://flavio.tordini.org/minitube) also are a graphical desktop client for viewing YouTube. [Freetube](https://freetubeapp.io) offers a very rich interface, but is pretty heavy as it uses the electron framework. There is also [youtube-viewer](https://github.com/trizen/youtube-viewer) which seems much more flexible as you can choose the video frontent (mpv, vlc, etc).

## Google Translate

### Translategate

A very barebones project in its earliest stages, but produces machine translation of single-line sentences by sending and receiving data to Google Translate without the use of Javascript in the frontend itself. While it may not exactly be visually appealing, it does the job incredibly well.

The project description hints at the direction that it would like to add other translation platforms as a goal, but currently only Google translate is supported. There is no URL substitution (like Invidious, etc) possible yet.

 - [Official Instance](https://translate.metalune.xyz/)
 - [Project website](https://codeberg.org/metalune/SWT)

